package com.qys.livesMall.app.user.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.qys.livesMall.app.user.model.dto.app.AppUserApplyWithdrawalDTO;
import com.qys.livesMall.app.user.model.dto.app.AppUserInfoTeamIncomeDTO;
import com.qys.livesMall.app.user.model.entity.UserStatisticsTeam;
import com.baomidou.mybatisplus.extension.service.IService;
import com.qys.livesMall.app.user.model.vo.app.AppUserInfoTeamDetailVo;
import com.qys.livesMall.app.user.model.vo.app.AppUserInfoTeamVo;
import com.qys.livesMall.app.user.model.vo.sys.SysUserStatisticsTeamVO;
import com.qys.livesMall.finance.model.vo.AppUserInfoTeamIncomeVO;
import com.qys.livesMall.framework.view.BaseQuery;
import com.qys.livesMall.framework.view.QysPage;

import java.util.List;

/**
 * <p>
 * 团队统计数据 服务类
 * </p>
 *
 * @author
 * @since 2023-08-02
 */
public interface UserStatisticsTeamService extends IService<UserStatisticsTeam> {

    Boolean editWaitWithdrawal(AppUserApplyWithdrawalDTO appUserApplyWithdrawalDTO);

    UserStatisticsTeam getbyUserid(Integer type, Long userId);

    List<UserStatisticsTeam> getByTeamId(Long teamId);

    AppUserInfoTeamVo getUserTeam(Long userId);

    Page<AppUserInfoTeamDetailVo> getUserlist(BaseQuery baseQuery);

    Page<AppUserInfoTeamIncomeVO> getUserlistIncome(AppUserInfoTeamIncomeDTO incomeDTO);

    QysPage<SysUserStatisticsTeamVO> teamPage(BaseQuery pageDTO);
}
